package com.demo.core.model;

import com.demo.core.model.support.SimpleBaseModel;

/**
 * 操作审计模型
 * @author ryuu.kk
 *
 */
public class Audit extends SimpleBaseModel implements java.io.Serializable {

	/**
	 * 操作行为类型
	 * @author ryuu.kk
	 */
	public enum ActionType {
		search,
		create,
		save,
		modify,
		delete
	}
	
	/**
	 * 版本序列化ID
	 */
	private static final long serialVersionUID = 7799104737759001362L;
	
	/**
	 * 站点ID
	 */
	private Long siteId;
	
	/**
	 * 操作行为
	 */
	private String action;
	
	/**
	 * 操作行为类型
	 * search/save/modify/delete...
	 */
	private String actionType;
	
	/**
	 * 用户名称
	 */
	private String userName;
	
	/**
	 * 操作目标的模型对象(输入目标)
	 * (多数据则进行合并)
	 */
	private String input;
	
	/**
	 * 操作目标的模型对象(输出目标)
	 * 对象的序列化,未序列化对象使用toString()方法
	 */
	private String output;
	
	/**
	 * 审计状态
	 */
	private String status;
	
	/**
	 * 审计类型
	 * 对某个业务类型的审计;如项目、文档、用户等
	 */
	private String type;

	public Long getSiteId() {
		return siteId;
	}

	public void setSiteId(Long siteId) {
		this.siteId = siteId;
	}

	public String getAction() {
		return action;
	}

	public void setAction(String action) {
		this.action = action;
	}

	public String getActionType() {
		return actionType;
	}

	public void setActionType(String actionType) {
		this.actionType = actionType;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getInput() {
		return input;
	}

	public void setInput(String input) {
		this.input = input;
	}

	public String getOutput() {
		return output;
	}

	public void setOutput(String output) {
		this.output = output;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}
}